前面的教學建立AWS的方式其實都是使用手動建立的方式,但過程中非常耗時,也容易出錯。
CDK(Cloud Development Kit)是一套可以用寫程式的方式來建立AWS資源,增加建置的效率,並且也可以使用git作版本控管,非常方便。
這邊單純講的話會非常空洞,因此直接學習他人的實作題來進行,增加學習的熟悉度。
在這篇的教學文章中,使用CDK建立一個SQS,然後會觸發Lamdbda,接著將lambda訊息寫到cloudwatch。
所以整理一下,一共有幾件事要做
在目錄底下使用npm安裝sqs library
npm i @aws-cdk/aws-sqs
SQS的教學文章也可以看官方網站。
使用IDE打開 lib/hello-cdk-stack.ts
在import的地方引入sqs
// 引入 aws-sqs
import sqs = require('@aws-cdk/aws-sqs');
並且實例一個Queue
// 實例化這個 queue
new sqs.Queue(this, "HelloQueue");
所以最後 lib/hello-cdk-stack.ts 會變成
import * as cdk from '@aws-cdk/core';
// 引入 aws-sqs
import sqs = require('@aws-cdk/aws-sqs');
export class HelloCdkStack extends cdk.Stack {
constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) {
super(scope, id, props);
// 實例化這個 queue
new sqs.Queue(this, "HelloQueue");
}
}
執行佈署語法
cdk deploy
接著進入SQS服務看,就有長出一個設定的Queue了
https://medium.com/@azole/aws-cdk-%E5%88%9D%E6%8E%A2-5b481d3970bd
https://docs.aws.amazon.com/cdk/api/latest/docs/aws-sqs-readme.html